<?
Blocks::$Config =& Core::$Modules['blocks'];

// pr(Blocks::$Config->blocks);

class Blocks {
	static $Config;

	// отображает содержимое инфо-блока по его id
	static 
	function view_block($id, $return=false)
	{
		
		//$result = phpDb::get_var("blocks/$id/content");
		$blocks_table = DATA_DIR . '/phptables/blocks.php';
		$blocks = read_array($blocks_table);
		
		// pr($blocks);
		// pr_($blocks[$id]);
		
		$result = val($blocks[$id]['content']);
		
		//pr_(strip_tags($result));
		
		// если в глобальном блоке нет текста либо картинок (а только теги из визуального редактора), возвращаем пустое значение		 
		if (!stristr($result, '<img') && !mb_trim(strip_tags($result))) return '';
		
		
		
		if ($return) return $result;
		else echo $result;
		
	}
	
	static
	function admin_controller(&$Page)
	{
		//
		//pr(self::$Config, $Page);
		$module_url = $Page->action->module_url;
		$module_id = self::$Config->id;
		
		$Page->toolbar_id = 'blocks';
		$Page->error='';
		
		switch ($Page->action->id)
		{
			
			case ('blocks'):
				
				$blocks_table = DATA_DIR . '/phptables/blocks.php';
				$Page->data = read_array($blocks_table);
				
				
				
				
				
				
				// pr($Page->data);
				
				// обрабатываем данные, переданные из формы 
				if (!empty($_POST['data']) 
					&& is_array($post_data = $_POST['data'])
					)
				{
					
					// проверяем ошибки и собщаем о них
					// ...
					
					// если нет ошибок, сохраняем данные и сообщаем об успехе
					if (empty($Page->error))
					{
						
						// phpDb::set_col('blocks/content', $post_data);
						
						foreach ($post_data  AS $id=>$content)
							$Page->data[$id]['content'] = $content;
						save_array($blocks_table, $Page->data);
						
						
						$Page->message = 'Данные успешно сохранены';
					}	
					
					$Page->data = (object) array_merge_recursive( (array)$Page->data, $post_data);
				}
				//pr($Page->data);
			
			break;
			
			case (''):
			break;
			
			case (''):
			break;
			
			case (''):
			break;
				
			
		}
	
	}



}